package com.emm.yixun.marketing.service;
import java.util.List;

import javax.jws.WebService;

import com.emm.yixun.common.page.Page;
import com.emm.yixun.common.response.Response;
import com.emm.yixun.common.response.ResponseList;
import com.emm.yixun.common.model.SalesTarget;
import com.emm.yixun.common.model.User;
import com.emm.yixun.common.model.dto.SalesTargetDto;
import com.emm.yixun.common.model.dto.SalesTargetPmoDto;
import com.emm.yixun.common.model.SalesTargetPmo;
@WebService
public interface SalesTargetServiceFacade{
     	/**
	    *新增
	    */
		Response<SalesTargetDto> save(SalesTargetDto dto,List<SalesTargetDto> list ,User user);
		
		/**
		*修改,当selective=true时修改非空列,当selective=false修改所有列
		*/
		Response<Integer> updateByPrimaryKey(SalesTargetDto dto,Boolean selective);
		
		/**
		 *逻辑删除
		 */
		Response<Integer> deleteByPrimaryKey(Long id);
		
		/**
		 *主键查询
		 */
		Response<SalesTarget> findById(Long id);
		
		/**
		 *根据dto查询记录
		 */
		ResponseList<SalesTarget> findByDto(SalesTargetDto dto);
		/**
		 *根据dto以及分页参数查询记录
		 */
		Page<SalesTargetDto> findPageByDto(SalesTargetDto dto,Integer begin,Integer row);
		
		/**
		* 方法描述 : 新增 表格数据
		* 创建者：ThinkPad 
		* 项目名称： emm-marketing-api
		* 类名： SalesTargetServiceFacade.java
		* 版本： v1.0
		* 创建时间： 2016年6月29日 下午2:38:53
		* @param projectId
		* @param type
		* @return List<SalesTargetDto>
		 */
		public List<SalesTargetDto> findAddList(Long projectId,Long type,String salesYear);
		
		/**
		* 方法描述 : 指标统计List
		* 创建者：ThinkPad 
		* 项目名称： emm-marketing-api
		* 类名： SalesTargetServiceFacade.java
		* 版本： v1.0
		* 创建时间： 2016年6月30日 下午12:56:10
		* @return List<SalesTargetDto>
		 */
		public List<SalesTargetDto> findSumList(SalesTargetDto dto);
		
		/**
		* 方法描述 : 清空数据
		* 创建者：ThinkPad 
		* 项目名称： emm-marketing-api
		* 类名： SalesTargetServiceFacade.java
		* 版本： v1.0
		* 创建时间： 2016年7月25日 下午2:28:43
		* @param dto
		* @return Response<Boolean>
		 */
		public Response<Boolean> clearSalesTarget(SalesTargetDto dto);
		
		/**
		* 方法描述 : 详情各项指标值
		* 创建者：ThinkPad 
		* 项目名称： emm-marketing-api
		* 类名： SalesTargetServiceFacade.java
		* 版本： v1.0
		* 创建时间： 2017年3月22日 上午11:00:06
		* @param dto
		* @return ResponseList<SalesTargetDto>
		 */
		public ResponseList<SalesTargetPmo> findCumulativeGrid(SalesTargetPmoDto dto);
		
		
}
